package com.csw.elasticsearchExercise.entity;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;
import org.springframework.data.annotation.Id;
import org.springframework.data.elasticsearch.annotations.DateFormat;
import org.springframework.data.elasticsearch.annotations.Document;
import org.springframework.data.elasticsearch.annotations.Field;
import org.springframework.data.elasticsearch.annotations.FieldType;

import java.util.Date;



@AllArgsConstructor
@NoArgsConstructor
@Data
@Accessors
@Document(indexName = "dangdang",type = "book")
public class Book {
	@Id
	private String id;

	@Field(type = FieldType.Text,analyzer ="ik_max_word")
	private String name;

//	@Field(type = FieldType.Date,format = DateFormat.basic_date_time)
//	@JsonFormat(pattern = "YYYY-MM-dd HH:mm:ss", timezone = "GMT+8")
	@Field(type = FieldType.Date)
	private Date createDate;

//	@Field(type = FieldType.Double)
//	private Double price;

	@Field(type = FieldType.Keyword)
	private String author;

	@Field(type = FieldType.Text,analyzer ="ik_max_word")
	private String content;
	/*
	* @Field(type=FieldType.Text, analyzer=“ik_max_word”) 表示该字段是一个文本，并作最大程度拆分，默认建立索引

@Field(type=FieldType.Text,index=false) 表示该字段是一个文本，不建立索引

@Field(type=FieldType.Date) 表示该字段是一个文本，日期类型，默认不建立索引

@Field(type=FieldType.Long) 表示该字段是一个长整型，默认建立索引

@Field(type=FieldType.Keyword) 表示该字段内容是一个文本并作为一个整体不可分，默认建立索引

@Field(type=FieldType.Float) 表示该字段内容是一个浮点类型并作为一个整体不可分，默认建立索引

date 、float、long都是不能够被拆分的
————————————————
版权声明：本文为CSDN博主「某科学的南条」的原创文章，遵循CC 4.0 BY-SA版权协议，转载请附上原文出处链接及本声明。
原文链接：https://blog.csdn.net/nlcexiyue/article/details/111386816*/
}